package com.dbdata.move.model;

// Generated cafuc by Hibernate Tools 4

import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TrainNoticeBrigadeDoubleSelect generated by hbm2java
 */
@Entity
@Table(name = "train_notice_brigade_double_select")
public class TrainNoticeBrigadeDoubleSelect implements java.io.Serializable {

	private TrainNoticeBrigadeDoubleSelectId id;
	private Organize organize;
	private TrainNoticePart trainNoticePart;
	private Date studentBegin;
	private Date studentEnd;
	private Date teacherBegin;
	private Date teacherEnd;

	public TrainNoticeBrigadeDoubleSelect() {
	}

	public TrainNoticeBrigadeDoubleSelect(TrainNoticeBrigadeDoubleSelectId id,
			Organize organize, TrainNoticePart trainNoticePart) {
		this.id = id;
		this.organize = organize;
		this.trainNoticePart = trainNoticePart;
	}

	public TrainNoticeBrigadeDoubleSelect(TrainNoticeBrigadeDoubleSelectId id,
			Organize organize, TrainNoticePart trainNoticePart,
			Date studentBegin, Date studentEnd, Date teacherBegin,
			Date teacherEnd) {
		this.id = id;
		this.organize = organize;
		this.trainNoticePart = trainNoticePart;
		this.studentBegin = studentBegin;
		this.studentEnd = studentEnd;
		this.teacherBegin = teacherBegin;
		this.teacherEnd = teacherEnd;
	}

	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "trainNoticePartId", column = @Column(name = "TRAIN_NOTICE_PART_ID", nullable = false)),
			@AttributeOverride(name = "orgId", column = @Column(name = "ORG_ID", nullable = false)) })
	public TrainNoticeBrigadeDoubleSelectId getId() {
		return this.id;
	}

	public void setId(TrainNoticeBrigadeDoubleSelectId id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ORG_ID", nullable = false, insertable = false, updatable = false)
	public Organize getOrganize() {
		return this.organize;
	}

	public void setOrganize(Organize organize) {
		this.organize = organize;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "TRAIN_NOTICE_PART_ID", nullable = false, insertable = false, updatable = false)
	public TrainNoticePart getTrainNoticePart() {
		return this.trainNoticePart;
	}

	public void setTrainNoticePart(TrainNoticePart trainNoticePart) {
		this.trainNoticePart = trainNoticePart;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "STUDENT_BEGIN", length = 19)
	public Date getStudentBegin() {
		return this.studentBegin;
	}

	public void setStudentBegin(Date studentBegin) {
		this.studentBegin = studentBegin;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "STUDENT_END", length = 19)
	public Date getStudentEnd() {
		return this.studentEnd;
	}

	public void setStudentEnd(Date studentEnd) {
		this.studentEnd = studentEnd;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "TEACHER_BEGIN", length = 19)
	public Date getTeacherBegin() {
		return this.teacherBegin;
	}

	public void setTeacherBegin(Date teacherBegin) {
		this.teacherBegin = teacherBegin;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "TEACHER_END", length = 19)
	public Date getTeacherEnd() {
		return this.teacherEnd;
	}

	public void setTeacherEnd(Date teacherEnd) {
		this.teacherEnd = teacherEnd;
	}

}
